package com.example.entity;

import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import lombok.Data;

/**
 * 考试防作弊记录实体类
 * 用于记录考试过程中的详细可疑行为
 */
@Data
@TableName("exam_anti_cheating_records")
public class ExamAntiCheatingRecord {
    
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /**
     * 考试ID
     */
    private Long examId;
    
    /**
     * 学生ID
     */
    private Long studentId;
    
    /**
     * 记录时间
     */
    private LocalDateTime recordTime;
    
    /**
     * 行为类型
     * KEYBOARD_SHORTCUT - 使用禁用快捷键
     * COPY_PASTE - 复制粘贴操作
     * TAB_SWITCH - 切换标签页/窗口
     * MOUSE_LEAVE - 鼠标离开考试区域
     * FULLSCREEN_EXIT - 退出全屏模式
     * WINDOW_FOCUS_LOSS - 窗口失去焦点
     */
    private String behaviorType;
    
    /**
     * 行为详情（JSON格式）
     * 包含具体的行为描述、触发的按键组合等详细信息
     */
    private String behaviorDetails;
    
    /**
     * 风险等级
     * LOW - 低风险
     * MEDIUM - 中等风险  
     * HIGH - 高风险
     * CRITICAL - 严重风险
     */
    private String riskLevel;
    
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
} 